Recently, DVDs have become very popular storage media. Among other things, a huge number of DVD-Video discs (which will be simply referred to herein as “DVDs”) are already on the market as packaged software in which movies or any other type of content is stored.
FIG. 1 shows the data structure of a DVD. As shown in the lower portion of FIG. 1, logical addresses are assigned to the area between the innermost lead-in area and the outermost lead-out area of the DVD, on which logic data is written based on the logical addresses. In the data area that can be accessed based on the logical addresses (i.e., logical address space), the volume information of a file system is recorded after its header and then application data such as video or audio data is written there.
The file system refers to ISO 9660 or UDF (universal disc format) and is designed as a system that manages the data on a disc based on some unit, which is called either “directory” or “file”. Even in a PC (personal computer) people use daily, the data stored on the hard disk is normally processed by a file system called “FAT” or “NTFS” so as to be represented on the computer with a data structure such as directory or file. In this manner, the usability of such data can be increased.
A DVD uses both of these file systems UDF and ISO 9660 (which are sometimes called a “UDF bridge” collectively) such that the data can be read out by a file system driver that complies with either UDF or ISO 9660. Naturally, data can be physically read from, written on, and erased from, a rewritable DVD medium such as a DVD-RAM, a DVD-R or a DVD-RW by way of such a file system.
The data stored on a DVD can be viewed as a directory or files as shown in the upper left tree of FIG. 1 by way of the UDF bridge. More specifically, a directory called “VIDEO_TS” is put just below a root directory “ROOT” so as to store the application data of the DVD. The application data is stored as a plurality of files, which includes:
VIDEO_TS.IFO: disc playback control information file;
VTS—01—0.IFO: video title set #1 playback control information file; and
VTS—01—0.VOB: video title set #1 stream file as main files.
The file system defines two types of extensions. Specifically, the extension “IFO” indicates a file on which playback control information is stored, while the extension “VOB” indicates a file on which an MPEG stream is stored as AV data. Examples of the playback control information include information needed to achieve interactivity, which allows the user to change the playback dynamically by his or her manipulation, as adopted in a DVD, information such as meta-data accompanying the title, and information accompanying the stream. Also, in a DVD, the playback control information may be generally called “navigation information”.
The playback control information files include the VIDEO_TS.IFO file that manages the overall disc and the VTS—01—0.IFO file that contains playback control information for each of a plurality of video tiles in a set. It should be noted that multiple titles (e.g., different movies or different versions of the same movie) can be stored on a single DVD. In this case, “01” included in the file name body represents the number of the video title set. Thus, a video title set #2 is identified by “VTS—02—0.IFO”, for example.
On the upper right corner of FIG. 1, shown is a DVD navigation space on the DVD application layer, which is a logical structure space where the playback control information is expanded. Specifically, the information included in the VIDEO_TS.IFO file is expanded as video manager information (VMGI) and the playback control information included in either the VTS—01—0.IFO file or any other video title set is expanded as video title set information (VTSI) in the DVD navigation space.
In the VTSI, program chain information (PGCI), which is information about a playback sequence called “program chain (PGC)”, is described. The PGCI consists of a group of cells and a sort of programming information called “command”. The cell itself is a collection of some or all of the video objects (VOBs) representing an MPEG stream. Thus, playing back a cell means playing back a section specified by the cell consisting of the VOBs.
The command is a concept comparable to Java™ script to be executed on a browser, and is processed by a DVD's virtual machine. The Java™ script can perform not only logical operations but also window and browser controls (e.g., newly opening the window of another browser). However, the DVD command can perform nothing but AV title playback controls (e.g., specifying a chapter to be played back) other than the logical operations.
Each cell includes, as its internal information, the start and end addresses of the VOBs stored on the disc (i.e., their logical addresses recorded on the disc). The player reads and writes data in accordance with the VOB start and end address information described by the cell.
FIG. 2 shows various types of information included in the navigation information embedded in a stream. The interactivity, which is one of the key features of the DVD, is not achieved just by the navigation information stored in VIDEO_TS.IFO, VTS—01—0.IFO and other files described above. In addition, some pieces of important information are multiplexed with video data and audio data in a VOB using a dedicated carrier called “navigation pack” (which will be referred to herein as either “navi pack” or “NV_PCK”).
A menu will be described as a simple example of interactivity. A menu picture includes a number of buttons, for each of which a type of processing to be done when the button is selected and pressed down is defined. Also, one of those buttons is selected on the menu (i.e., highlighted with a semi-transparent color overlaid thereon to indicate the user that the button is now being selected), and the user can scroll upward, downward, rightward or leftward using the arrow keys of the remote controller to change the buttons being selected. That is to say, when the user shifts the highlight, using the arrow keys of the remote controller, to his or her desired button to be selected and pressed down and makes a decision with the enter key pressed down, a program of its associated command is executed. For example, a title or chapter associated with the button selected is played back in response to the command.
In the NV_PCK, highlight color information, individual button information and other information are included. The highlight color information describes color palette information, which specifies the semi-transparent color of the highlight to be overlaid. The button information describes rectangular area information (i.e., information about the location of each button), information about to what button the highlight should be shifted from the current button (i.e., information designating the destination buttons in response to the user's up, down, right and left key manipulations) and button command information (i.e., information about the command to be executed when the button is pressed down).
The highlight on the menu is produced as a picture to be overlaid on the menu picture. More specifically, an area corresponding to the rectangular area specified by the button information is colored in accordance with the color palette information, and then superposed on the rectangular area specified by the button information of the menu, thereby producing the highlight on the menu. This overlaid picture is synthesized with the background picture and the resultant synthetic picture is presented on the screen.
A portion of the navigation data is embedded as NV_PCK in a stream for the following purposes. Firstly, synchronization can be established more easily even if the menu information is dynamically updated synchronously with the stream (e.g., in a situation where the menu should be displayed only during 5 to 10 minutes after a movie started to be played back) or even if the given application often causes synchronization timing errors. Secondly, the machine will come in handier to the user (e.g., AV data can be decoded and played back smoothly even during a special playback operation such as a fast-find or rewind playback operation) if special playback support information is stored in the NV_PCK.
FIGS. 3A, 3B and 3C show how to generate a VOG and FIG. 3D shows a configuration for a player for playing back the VOG generated. The moving pictures, sound and subtitles shown in FIG. 3A are packetized and packed in compliance with MPEG system standard ISO/IEC 13818-1 as shown in FIG. 3B. In this case, the video is high definition video (which will be abbreviated herein as “HD video”) and packetized and packed while maintaining its video quality. Examples of HD videos include various types of high-definition quality videos such as motion pictures, still pictures, characters and graphics. These types of data are multiplexed together, thereby generating a single MPEG program stream as shown in FIG. 3C. In this case, NV_PCK including button commands to realize the interactivity is also included in the mix.
When an MPEG data stream is broken down into the individual types, the data representing the motion pictures, sound or subtitles are sequentially arranged as a bit stream in the order of decoding. However, when the motion pictures, sound and subtitles are multiplexed together by an MPEG system, not all of the data included in the bit stream are arranged in the order of playback (i.e., in the order of decoding) among the respective types. For example, even if a motion picture data pack and a subtitle data pack are arranged back to back, that motion picture data and that subtitle data pack are not always decoded or played back at the same timing.
These data should be multiplexed in this manner because there is a restriction that an MPEG stream needs to be encoded so as to be decoded by a predetermined decoder model (which is a so-called “system target decoder (STD)”). That is to say, a number of decoder buffers associated with respective elementary streams are defined for a decoder model. One of those buffers associated with an elementary stream has a different capacity from that of another one of the buffers associated with another elementary stream. More specifically, a buffer associated with a stream of motion pictures has a capacity of 232 KB, a buffer associated with a stream of sound has a capacity of 4-KB and a buffer associated with a stream of subtitles has a capacity of 52 KB. Also, the video and audio data are temporarily stored until it is time to decode them. The timing of decoding changes with the specific buffer capacity. Accordingly, even if two data are multiplexed together back to back, those data may still be decoded at different times.
An MPEG program stream to be played back is input to the player shown in FIG. 3D. A demultiplexer 3100 receives the MPEG program stream, separates a pack including motion picture data, subtitle data and audio data, and supplies it to a buffer/decoder 3108. The buffer/decoder 3108 buffers the packed data and decodes the motion picture data, subtitle data and audio data separately, thereby generating respective streams. More specifically, the buffer 3108 includes a video buffer, a subtitle buffer and an audio buffer and stores the motion picture data, subtitle data and audio data in the video, subtitle and audio buffers, respectively. Thereafter, the buffer/decoder 3108 makes motion picture data, subtitle data and audio data based on the packed data and outputs them. No decoders are particularly shown in FIG. 3D. The buffer/decoder 3108 outputs the motion picture data, subtitle data and audio data of HD video. After having been decoded, the audio data is output to a loudspeaker, for example, and reproduced as sound.
The HD video data is processed as follows. The HD video data (including motion picture data, still picture data and character/graphics data) is output from the buffer/decoder 3108 to respective processing paths. Specifically, the motion picture data is converted by a video converting section 3101 into NTSC- or PAL-compliant interlaced video (i.e., SD video) and then has its resolution and aspect ratio modified by a scaling section 3102. If the motion picture has been MPEG encoded, then noise unique to the MPEG compression (such as block noise and mosquito noise) is removed effectively by a first image quality correcting section 3103. As a result, the image quality is improved. On the other hand, the still picture data is subjected to image quality correction unique to a still picture encoding method and down-converted by a second image quality correcting section 3104. And the still and motion pictures are output alternately. The character/graphics data is subjected to a down conversion suitable for characters and graphics by a third image quality correcting section 3105.
On the other hand, the subtitle data is output to a fourth image quality correcting section 3107. Specifically, the subtitle data is subjected to necessary color conversion processing by way of a color conversion table CLUT 3106 and then down-converted into SD video by the fourth image quality correcting section 3107. Thereafter, the SD video subtitle data and the SD video motion picture data are synthesized together, and the resultant synthetic video is output to a TV that can present SD video.
After the video data has been output from the buffer/decoder 3108, the resolution, aspect ratio, frame rate and other parameters are converted from HD video grades into SD video grades. This is because if the motion picture, still picture and subtitles can be processed individually through their best filters, then the deterioration in image quality can be minimized during the down conversion. Processing of this type is disclosed in Japanese Laid-Open Publication No. 2001-292341, for example.
It is expected that there will be more and more occasions where HD video will be recorded without decreasing its frame rate. For example, as the capacities of storage media and write rates go on increasing, film materials would be recorded at the originally intended 24 frames per second and 720 P (or 1080i) more and more often. Meanwhile, it is also imaginable that TVs that can display nothing but SD video will be continuously used for a rather long time. Accordingly, there will be very high demand for a player that is intended to play HD video storage medium but can also convert HD video into SD video. However, the HD video cannot be written on any DVD on the market without decreasing its frame rate. For that reason, no DVD players have ever been designed so as to perform such a conversion as well.
Also, if multiple separate streams, including motion picture data, subtitle data and other data, respectively, are multiplexed together as in an MPEG stream, then the motion pictures, subtitles and so on need to be played back just as intended by the content provider during the authoring process when HD video is converted into SD video.
An object of the present invention is to convert the HD grade video, subtitle and other data into SD grade video, subtitle and other data while maintaining the originally intended playback timings.